#include <iostream>
#include <initializer_list>
#include <cstdint>
#include <stdexcept>
#include <array>
#include "Array.hpp"

using namespace std;



void func(Array<int, 32> &arr)
{
    for (size_t i = 0; i < arr.size(); ++i)
    {
        std::cout << arr.at(i) << std::endl;
    }

    {
        int count = 0;
        for (auto &element : arr)
        {
            element = count++;
            std::cout << element << std::endl;
        }
    }

    for (auto it = arr.begin(); it != arr.end(); ++it)
    {
        std::cout << *it << std::endl;
    }
}

int main(int argc, char **argv)
{
    {
        Array a{1, 2, 3};
        Array a1{1};

        int ca[] = {1, 2, 3};
        Array a2{ca};

        Array a3 = make_array(ca);
    }
    Array<int, 32> arr{1, 2, 3};
    func(arr);
    return 0;
}
